package com.qiujie.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.qiujie.dto.ResponseDTO;
import com.qiujie.entity.DiningOrder;

import java.sql.Date;

/**
 * 订餐Service接口
 */
public interface DiningOrderService extends IService<DiningOrder> {
    
    /**
     * 创建订餐
     * @param diningOrder 订餐对象
     * @return 结果
     */
    ResponseDTO create(DiningOrder diningOrder);

    ResponseDTO statistics();
    /**
     * 取消订餐
     * @param id 订餐ID
     * @return 结果
     */
    ResponseDTO cancel(Integer id);
    
    /**
     * 确认订餐
     * @param id 订餐ID
     * @return 结果
     */
    ResponseDTO confirm(Integer id);
    
    /**
     * 获取订餐列表
     * @param elderlyStaffId 老人用户ID
     * @param staffId 下单用户ID
     * @param status 订单状态
     * @param startDate 开始日期
     * @param endDate 结束日期
     * @return 结果
     */
    ResponseDTO list(Integer elderlyStaffId, Integer staffId, Integer status, Date startDate, Date endDate);
    
    /**
     * 获取订餐详情
     * @param id 订餐ID
     * @return 结果
     */
    ResponseDTO getDetail(Integer id);
    
    /**
     * 获取订餐统计
     * @param startDate 开始日期
     * @param endDate 结束日期
     * @return 结果
     */
    ResponseDTO getStatistics(Date startDate, Date endDate);
} 